package Questions;

import IO.Output;

/**
 * Created with IntelliJ IDEA.
 * Source.UserController: Инесса
 * Date: 10.10.13
 * Time: 23:05
 * To change this template use File | Settings | File Templates.
 */
public class AnswerQuestion implements Question {
    protected final String question;
    protected final String rightAnswer;

    /**
     *  Конструктор базового класса инициализирует вопрос и правильный ответ
     * @param question вопрос
     * @param rightAnswer правильный ответ
     */
    public AnswerQuestion(String question, String rightAnswer) {
        this.question  = question;
        this.rightAnswer = rightAnswer;
    }

    /**
     * Выводим вопрос для пользователя
     */
    @Override
    public void askQuestion() {
        Output.printLineMsg(question);
    }

    /**
     * Проверка правильности ответа
     * @param answer ответ пользователя
     * @return результат
     */
    @Override
    public boolean isCorrect(String answer) {
        return rightAnswer.equals(answer);
    }

    /**
     * Сериализация вопроса, необходимо для хранения сессии
     * @param delimiter разделитель
     * @return строку
     */
    @Override
    public String serialize(String delimiter) {
        StringBuilder builder = new StringBuilder(100);
        builder.append(question);
        builder.append(delimiter);
        builder.append(rightAnswer);
        return builder.toString();
    }

}
